package com.lingjtx.common.security.annotation;

import com.lingjtx.common.security.common.PermissionType;

import java.lang.annotation.*;

@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Permissions {

    // 开发者账号分多级权限，开通的应用才有访问权限，“公司/组织”开通的账号最高管理员权限也只能访问他们开通的应用
    PermissionType[] type() default PermissionType.HAS_PERMISSION;

    /**
     * 权限标识
     */
    String value();

    /**
     * 权限资源名称
     */
    String name() default "";

    /**
     * 当是数据权限的时候，多表关联之后的查询条件，表的别名
     * 以.结尾 user.
     */
    String alias() default "";
}
